[IA64] Inject dtlb miss fault instead of page not present fault.
authorawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Wed, 1 Nov 2006 05:25:35 +0000 (22:25 -0700)
committerawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Wed, 1 Nov 2006 05:25:35 +0000 (22:25 -0700)
In VTI domain, VHPT, VTLB and mTLB work togathet to emulate guest TLB,
At below situation, XEN work through guest VHPT and p is zero, at this time
this tlb entry is not in guest TLB, so XEN should inject dtlb miss fault.

Signed-off-by: Anthony Xu <anthony.xu@intel.com>
xen/arch/ia64/vmx/vmx_process.c

index 7320beb9bb3f24fe17b81bdbf0c8fa9509f4a281..855c7f4ccfdb63235e81be5682d433e5a0c2adce 100644 (file)
@@ -343,7 +343,7 @@ vmx_hpw_miss(u64 vadr , u64 vec, REGS* regs)
             if (!(pteval & _PAGE_P)) {
                 if (vpsr.ic) {
                     vcpu_set_isr(v, misr.val);
-                    data_page_not_present(v, vadr);
+                    dtlb_fault(v, vadr);
                     return IA64_FAULT;
                 } else {
                     nested_dtlb(v);